#ifndef PHOTON_MAP_HPP
#define PHOTON_MAP_HPP

#include <algorithm>
#include <iostream>
#include <vector>
#include <cmath>
#include "photon.hpp"
#include "kd_tree.hpp"

using namespace std;

class Photon_Map{	
public:
	Photon_Map();
	~Photon_Map();

	
	void insert(Photon*);
	Kd_Tree* construct_kd_tree_rec(void);
	Kd_Node* construct_kd_tree(unsigned int,unsigned int,unsigned int);
	
	

private:
	vector<Photon*> photon_list;
	Kd_Tree* kd_tree;

};

#endif

